MILAB-6382: update from boilerplate - #4
Conversation
| "pnpm": { | ||
| "overrides": { | ||
| "@platforma-sdk/block-tools": "file:///Users/pvyazankin/mictx5/core/platforma/tools/block-tools/package.tgz" | ||
| } | ||
| } |
There was a problem hiding this comment.
Developer-local file path in pnpm override
@platforma-sdk/block-tools is overridden to file:///Users/pvyazankin/mictx5/core/platforma/tools/block-tools/package.tgz — a path that exists only on the author's machine. Any other contributor or CI runner that runs pnpm install will fail immediately with a resolution error because the .tgz file won't be present at that absolute path. The same local-path entry also appears in pnpm-lock.yaml (under the overrides: section and each importer that uses block-tools), so even without the package.json override the lockfile will force the broken resolution.
Prompt To Fix With AI
This is a comment left during a code review.
Path: package.json
Line: 33-37
Comment:
**Developer-local file path in pnpm override**
`@platforma-sdk/block-tools` is overridden to `file:///Users/pvyazankin/mictx5/core/platforma/tools/block-tools/package.tgz` — a path that exists only on the author's machine. Any other contributor or CI runner that runs `pnpm install` will fail immediately with a resolution error because the `.tgz` file won't be present at that absolute path. The same local-path entry also appears in `pnpm-lock.yaml` (under the `overrides:` section and each importer that uses `block-tools`), so even without the `package.json` override the lockfile will force the broken resolution.
How can I resolve this? If you propose a fix, please make it concise.| "lint": "turbo run lint", | ||
| "type-check": "turbo run type-check", | ||
| "test": "env PL_PKG_DEV=local turbo run test --concurrency 1 --env-mode=loose", | ||
| "test": "env PL_PKG_DEV=local turbo run test --concurrency 1", |
There was a problem hiding this comment.
--env-mode=loose removed from root test script
The previous command was turbo run test --concurrency 1 --env-mode=loose. Turbo's default strict env-mode only passes the variables explicitly listed in each task's passThroughEnv; loose forwarded the full environment. The workflow test task in turbo.json lists PL_ADDRESS, PL_TEST_PASSWORD, PL_TEST_USER, PL_TEST_PROXY, and DEBUG, but any other env var that integration tests currently depend on will silently be unavailable after this change. Verify that no active test relies on variables outside that explicit list.
Prompt To Fix With AI
This is a comment left during a code review.
Path: package.json
Line: 8
Comment:
**`--env-mode=loose` removed from root test script**
The previous command was `turbo run test --concurrency 1 --env-mode=loose`. Turbo's default strict env-mode only passes the variables explicitly listed in each task's `passThroughEnv`; `loose` forwarded the full environment. The workflow `test` task in `turbo.json` lists `PL_ADDRESS`, `PL_TEST_PASSWORD`, `PL_TEST_USER`, `PL_TEST_PROXY`, and `DEBUG`, but any other env var that integration tests currently depend on will silently be unavailable after this change. Verify that no active test relies on variables outside that explicit list.
How can I resolve this? If you propose a fix, please make it concise.There was a problem hiding this comment.
Code Review
This pull request standardizes the project structure and build configurations across packages, introducing oxlint/oxfmt configurations, updating Turbo tasks, and adding formatting scripts. A critical issue was identified in the root package.json, where a hardcoded local file path was added to the pnpm overrides, which will break the build process in other environments.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
| "pnpm": { | ||
| "overrides": { | ||
| "@platforma-sdk/block-tools": "file:///Users/pvyazankin/mictx5/core/platforma/tools/block-tools/package.tgz" | ||
| } | ||
| } |
There was a problem hiding this comment.
The pnpm.overrides section contains a hardcoded local file path (file:///Users/pvyazankin/...) for @platforma-sdk/block-tools. This will break the installation and build process for other developers and CI/CD environments. Please remove this local override before merging.
"pnpm": {
"overrides": {}
}
Greptile Summary
This PR synchronises the
gpu-testblock with the latest boilerplate, replacing ESLint with oxlint/oxfmt, switching TypeScript and@types/nodetopeerDependencies, addingfmt/check/mark-stablescripts, wiring a newcheckstep into the Turbo build pipeline, and removing theloadBlockDescriptionhelper from the block package. It also introducesvitesttesting for the workflow package and adds@platforma-sdk/testto the catalog.package.jsonandpnpm-lock.yamlboth hard-code an override for@platforma-sdk/block-toolspointing tofile:///Users/pvyazankin/…/package.tgz. This breakspnpm installfor all other contributors and CI.pnpm-workspace.yamlstill declares@platforma-sdk/block-tools: 2.10.6while the lockfile resolves it to2.10.17via the local override; these should be reconciled once the override is removed.--env-mode=loosedropped from the test script: The roottestcommand no longer forwards the full environment to Turbo; any test relying on env vars not listed in the workflow task'spassThroughEnvwill silently lose access to them.Confidence Score: 2/5
Not safe to merge in its current state — the committed local file override will break pnpm install for any machine that isn't the author's.
The root package.json and the lockfile both reference a .tgz on a single developer's machine. Every CI run and every other contributor's fresh install will fail at dependency resolution before a single line of application code is reached. Additionally the catalog version for block-tools is stale relative to what the lockfile actually installs, and removing --env-mode=loose from the test command may quietly starve integration tests of expected environment variables.
package.json and pnpm-lock.yaml — the local-path override must be removed and replaced with a published version before this branch can be merged.
Important Files Changed
Flowchart
%%{init: {'theme': 'neutral'}}%% flowchart TD A[pnpm install] -->|reads overrides| B{block-tools override} B -->|file:///Users/pvyazankin/...| C[❌ File not found on CI / other dev machines] B -->|published catalog 2.10.6| D[✅ Resolves correctly] subgraph Turbo pipeline updated E[fmt] -->|cache: false| F[format sources] G[check] -->|dependsOn: ^build| H[ts-builder check] H --> I[build] I --> J[do-pack / test / mark-stable] end subgraph block package K[block/index.js before] -->|exports loadBlockDescription + blockSpec| L[consumers] M[block/index.js after] -->|exports blockSpec only| L end subgraph Linting toolchain N[ESLint + eslint.config.mjs removed] -->|replaced by| O[oxlint + .oxlintrc.json] P[prettier removed] -->|replaced by| Q[oxfmt + .oxfmtrc.json] end%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%% flowchart TD A[pnpm install] -->|reads overrides| B{block-tools override} B -->|file:///Users/pvyazankin/...| C[❌ File not found on CI / other dev machines] B -->|published catalog 2.10.6| D[✅ Resolves correctly] subgraph Turbo pipeline updated E[fmt] -->|cache: false| F[format sources] G[check] -->|dependsOn: ^build| H[ts-builder check] H --> I[build] I --> J[do-pack / test / mark-stable] end subgraph block package K[block/index.js before] -->|exports loadBlockDescription + blockSpec| L[consumers] M[block/index.js after] -->|exports blockSpec only| L end subgraph Linting toolchain N[ESLint + eslint.config.mjs removed] -->|replaced by| O[oxlint + .oxlintrc.json] P[prettier removed] -->|replaced by| Q[oxfmt + .oxfmtrc.json] endPrompt To Fix All With AI
Reviews (1): Last reviewed commit: "MILAB-6382: update from boilerplate" | Re-trigger Greptile